package day0211;

import day0226.Test1;

import java.util.Scanner;

public class Test6 {
    public static void main(String[] args) {

        /*Scanner sc = new Scanner(System.in);
        System.out.println("请输入一个四位数：");
        int year=sc.nextInt();
        String rs=  (year%4==0&&year%100!=0)  ||  year%400==0    ?    "是闰年"   :   "不是闰年";
        System.out.println(rs);*/



        int x=1;
        //&&短路与：  条件1 && 条件2  在条件1不成立时不会判断条件2
        //&逻辑与：   条件1 & 条件2  在条件1是否成立时都要判断条件2
        //                 1      1
        System.out.println(x<0 && x++ >100);
        System.out.println(x);//1

        //||短路或：  条件1 || 条件2  在条件1成立时不会判断条件2
        //|逻辑与：   条件1 | 条件2  在条件1是否成立时都要判断条件2
        System.out.println(x<0 || x++ >100);
        System.out.println(x);//2


        /*int i=1;
        System.out.println(i++);//1//先将i赋值给i++， 然后让i加1
        System.out.println(i);//2*/

        /*int i=1;
        System.out.println(++i);//2//先让i加1 (i是2)，然后将i变化后的值赋值给++i
        System.out.println(i);//2*/



        //  注意： i++  先将i变化前的值赋值给i++, 然后让i自增1
        //  注意： ++i  先让i自增1,然后将i变化后的值赋值给++i
        //
        //  注意： i--  先将i变化前的值赋值给i--, 然后让i自减1
        //  注意： --i  先让i自减1,然后将i变化后的值赋值给--i


        int m=4;
        //             4(m=5)  6(m=6)   5(m=5) 5(m=4)
        int result=  m++ +  ++m   -  --m  +  m--;
        System.out.println(result);//10
        System.out.println(m);//4


        System.out.println(~-1);  //7
        System.out.println(1&2);
        //  0101
        //| 0010
        //-------------
        //  0011
        System.out.println(1|2);


        System.out.println(1^2);
        //  0001
        //^ 0010
        //-------------
        //  0011

        System.out.println(1<<2);//将1对应的二进制补码，左移两位。
        //  00000001
        //  00000100

        System.out.println(7>>>2);//将7对应的二进制补码，无符号右边移两位。
        // 00000111
        // 00000001

        System.out.println(7>>2);//将7对应的二进制补码，无符号右边移两位。
        System.out.println(-11>>2); //  111111111111111111111111 1111 0101
        System.out.println(-11>>2); //  11111111111111111111111111 1111 01







    }
}

